Soru & Cevap

SQLite login işlemini nasıl yapabilirim

26.08.2016 - 11:36

Geliştirdiğim projemde login işlemi yapıyorum local olarak. Fakat kullanici ismine göre veri çekemiyorum. Örnek olarak isimden şifreyi döndürmek istedim fakat uygulama duruyor. id ile bilgileri çekebiliyorum fakat isim ile çekemiyorum. Kodlama şu şekilde ;

 

public String getLogin(String ad) {
        String[] sutunlar=new String[]{KEY_ROW_ID,KEY_ISIM,KEY_SİFRE};
        Cursor c=veritabanim.query(DATABASE_TABLO,sutunlar,KEY_ISIM+"="+ad,null,null,null,null);

        if (c!=null)
        {
            c.moveToFirst();
            String sifre=c.getString(2);
            return sifre;
        }

        return null;
    }




girisYap.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {


                String ad=isimBilgisi.getText().toString();
                Veritabani db= new Veritabani(MainActivity.this);
                db.baglantiyiAc();


                String donenSifre=db.getLogin(ad);

                db.baglantiyiKapat();

                Intent i= new Intent(MainActivity.this,kisilerListesi.class);
                startActivity(i);






            }
        });

 

276 Görüntülenme

1 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

picture-7541-1521024507.jpg
burhanaras
27.08.2016 - 02:07

Hata mesajını yazmadığın için net birşey söyleyemiyorum, benim farkettiğim 3 tane kolon adı verip, whereArgs parametresine null yollaman sebep oluyor gibi geldi. 

Aşağıdaki gibi dğiştir programı:


  String selectQuery = "SELECT  * FROM " + DATABASE_TABLO+ " WHERE " + KEY_ISIM+ " = ?";        
  db = this.getReadableDatabase();
  Cursor  cursor = db.rawQuery(selectQuery, new String[]{ad});

 

Gerisi cursordan veri çekme, yani senin yazdığınla aynı.

Bir de veritabanim dediğin değişkeni nasıl init ediyorsun?

this.getReadableDatabase(); şeklinde alıyor olman gerek. Aksi halde bundan dolayı hata veriyor olabilir. Hata mesajını yazabilirsen net bir çözüm bulabiliriz.

cansel var
28.08.2016 - 04:51
Merhaba Burhan Bey. Hata mesajımı sizinle paylaşacağım yardımcı olduğunuz için tekrar teşekkür ederim.
cansel var
28.08.2016 - 07:47
Burhan Bey gerçekten çok teşekkür ederim söylediğiniz gibi yaptım ve veriyi çektim.